package com.zrzhen.springbootdemo.common.http;

import java.io.File;
import java.util.Map;

public interface Ipphttp {

    /**
     * get方式请求
     * @param url
     * @param params
     * @param headers
     * @return
     */
    String get(String url, Map<String, String> params, Map<String, String> headers);

    /**
     * post，参数为json字符串
     * @param url
     * @param jsonParams
     * @param headers
     * @return
     */
    String postJson(String url, String jsonParams, Map<String, String> headers);

    /**
     * post，参数为map。方法内部会自动将该map转为json字符串
     * @param url
     * @param params
     * @param headers
     * @return
     */
    String postJsonMap(String url, Map<String, Object> params, Map<String, String> headers);

    /**
     * post 参数为map,方法内部会自动将参数转为表单map
     * @param url
     * @param params
     * @param headers
     * @return
     */
    String postForm(String url, Map<String, String> params, Map<String, String> headers);

    /**
     * post 参数为xml字符串
     * @param url
     * @param xml
     * @param headers
     * @return
     */
    String postXmlParams(String url, String xml, Map<String, String> headers);

    /**
     *
     * 参数为文件
     * @param url
     * @param file
     * @param headers
     * @return
     */
    String postFile(String url, File file, Map<String, String> headers);

}
